Use of gyro sensors for identifying athletic maneuvers

ABSTRACT

Embodiments of the present disclosure help identify athletic maneuvers performed by actors and/or their sports equipment using data from sensors, including data from at least one gyroscopic sensor. Among other things, various embodiments can help judges and spectators of extreme sports to identify and assess athletic maneuvers more easily and accurately compared to conventional methods.

CROSS-REFERENCES TO RELATED APPLICATION

This application claims priority to U.S. Provisional Patent ApplicationNo. 62/025,963, filed Jul. 17, 2014 and entitled “USE OF GYRO SENSORSFOR IDENTIFYING ATHLETIC MANEUVERS,” and U.S. Provisional PatentApplication No. 62/001,935, filed May 22, 2014 and entitled “USE OF GYROSENSORS FOR JUMP DETECTION”; and is related to U.S. patent applicationSer. No. 13/932,899, filed Jul. 1, 2013 and entitled “SYSTEMS ANDMETHODS FOR IDENTIFYING AND CHARACTERIZING ATHLETIC MANEUVERS,” and U.S.patent application Ser. No. 13/612,470, filed Sep. 12, 2012 and entitled“METHOD AND APPARATUS FOR DETERMINING SPORTSMAN JUMPS USING FUZZYLOGIC,” the disclosures of which are hereby incorporated herein byreference.

BACKGROUND

The popularity of extreme sports (also referred to as “action sports” or“adventure sports”) is steadily growing. In particular, sports such assnowboarding, skateboarding, free skiing, surfboarding, skydiving,wingsuit flying, bicycle motocross (BMX), and others are becoming (orare currently) mainstream sports. Such sports are increasingly beingcovered by various media organizations and some competitions (such asthe X-Games) are devoted solely to extreme sports.

In many traditional sports, competitions are measured and judged usingobjective measures such as scores (e.g., the number of runs in abaseball game or points in a basketball game) or times (e.g., the timefor a runner or downhill skier to cross a finish line). In many extremesports, by contrast, athletes compete by performing various athleticmaneuvers (or “tricks”) such as jumps, flips, rotations, and the like.As an example, a description of common tricks that are performed insnowboarding can be found athttp://en.wikipedia.org/wiki/List_of_snowboard_tricks and a descriptionof common skateboarding tricks at http://skateboardingtrickslist.com.

Many athletic maneuvers in extreme sports are complex and/or performedvery quickly. Accordingly, athletic maneuvers performed in action sportscompetitions are often evaluated (by judges and spectators) based on avariety of subjective factors, including an individual's personalperception of the difficulty or aesthetics of a particular athleticmaneuver. This often leads to problems in identifying different athleticmaneuvers, as well as judging or rating such maneuvers in competition.In ski jump competitions, for example, the movement of the jumper may beso fast that spectators cannot determine the number of rotations orflips the jumper performs.

Some conventional systems attempt to measure fast rotations withinertial sensors. Such measurements are typically made relative to thesensor axis but can be related to the absolute axis as well. However,such conventional systems do not make sensor measurements understandableto the sport participants and spectators. Conventional systems areunable to automatically recognize and measure action sport “tricks,” andare thus unsuitable for virtual competitions, leaderboards, and socialnetworks dedicated to the action sport participants. Embodiments of thepresent disclosure address these and other issues.

BRIEF DESCRIPTION OF THE DRAWINGS

A more complete understanding of certain embodiments may be derived byreferring to the detailed description and claims when considered inconnection with the following illustrative figures.

FIGS. 1 and 1A are flow diagrams showing exemplary processes accordingto various embodiments.

FIG. 2 is a block diagram of an exemplary system according to variousembodiments.

FIGS. 3, 4, 5, 6A, 6B, and 7 are exemplary graphs according to variousaspects of the present disclosure.

FIGS. 8-12 are additional exemplary graphs according to various aspectsof the present disclosure.

SUMMARY

Embodiments of the present disclosure help identify athletic maneuversperformed by actors and/or their sports equipment using data fromsensors, including data from at least one gyroscopic sensor. Among otherthings, various embodiments can help judges and spectators of extremesports to identify and assess athletic maneuvers more easily andaccurately compared to conventional methods.

A computer-implemented method according to one embodiment of the presentdisclosure comprises receiving, by a computer system, sensor datarelated to motion by an

actor over a time period, wherein the sensor data includes data from agyroscope; determining, by the computer system and based on the sensordata, a plurality of motion characteristics; and

identifying, based on the plurality of motion characteristics, anathletic maneuver associated with the motion by the actor during thetime period.

The present disclosure includes methods and apparatuses which performthese methods, including data processing systems which perform thesemethods, and computer readable media containing instructions which whenexecuted on data processing systems cause the systems to perform thesemethods.

Other features will be apparent from the accompanying drawings and fromthe detailed description which follows.

DETAILED DESCRIPTION

The following description and drawings are illustrative and are not tobe construed as limiting. Numerous specific details are described toprovide a thorough understanding. However, in certain instances, wellknown or conventional details are not described in order to avoidobscuring the description. References to one or an embodiment in thepresent disclosure are not necessarily references to the sameembodiment; and, such references mean at least one.

Reference in this specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least one embodimentof the disclosure. The appearances of the phrase “in one embodiment” invarious places in the specification are not necessarily all referring tothe same embodiment, nor are separate or alternative embodimentsmutually exclusive of other embodiments. Moreover, various features aredescribed which may be exhibited by some embodiments and not by others.Similarly, various requirements are described which may be requirementsfor some embodiments but not other embodiments.

Any combination and/or subset of the elements of the methods depictedherein may be practiced in any suitable order and in conjunction withany suitable system, device, and/or process. The methods described anddepicted herein can be implemented in any suitable manner, such asthrough software operating on one or more computer systems. The softwaremay comprise computer-readable instructions stored in a tangiblecomputer-readable medium (such as the memory of a computer system) andcan be executed by one or more processors to perform the methods ofvarious embodiments.

FIG. 1 depicts an exemplary process according to various embodiments ofthe present disclosure. In FIG. 1, method 100 includes receiving sensordata (105) related to motion by an actor over a period of time anddetermining motion characteristics based on the sensor data (110).Method 100 further includes receiving input related to a definition ofan athletic maneuver (115), associating one or more motioncharacteristics with the definition (120), and storing the athleticmaneuver definition and associated motion characteristics in a database(125). Method 100 further includes identifying one or more athleticmaneuvers based on the determined motion characteristics (130),determining a level of similarity between the determined motioncharacteristics and motion characteristics associated with theidentified athletic maneuver(s) (135), and generating an alert (140) inresponse to the similarity level being below a predetermined threshold.Method 100 also includes combining or overlaying information related tothe athletic maneuver with video of the athletic maneuver (145). Thesteps of method 100 may be implemented (in whole or in part, and in anydesired order) by software operating on a computer system, such as theexemplary computer system 200 depicted in FIG. 2.

Embodiments of the present disclosure may receive sensor data (105)directly or indirectly from any number and type of sensors, such as anaccelerometer, a gyroscope, a magnetometer, a Hall effect sensor, aglobal positioning system, an ultrasonic sensor, an optical sensor; abarometric sensor; and combinations thereof. Information from differentsensors may be used together or separately to determine various motioncharacteristics for the actor and/or the actor's equipment. As used inthis context, an “actor” performing an athletic maneuver may refer toany human (e.g., skier, snowboarder, cyclist, diver, athlete, etc.) aswell as to sporting equipment associated with, or controlled by, ahuman. Such sporting equipment may include, for example, a vehicle (suchas a bicycle, boat, automobile, motorcycle, etc.), a skateboard, skis, asnowboard, a parachute, and other equipment or devices.

For example, Hall effect sensors may be used to monitor the speed of astunt bicyclist's wheels before, during, and after a jump, while datafrom one set of accelerometers and gyroscopes can monitor flips androtations performed by the bicyclist and a second set of accelerometersand gyroscopes can monitor flips and rotations of the bicycle itself.Other sensors, such as an optical sensor (e.g., a proximity sensor) orglobal positioning system can be used to help determine actor's positionwith regards to the ground, ramp, other actors, and other objects.Various embodiments may utilize data from sensors imbedded in orattached to an actor's clothing, skin, equipment, or surroundings (e.g.,in a ramp used by an actor to perform jumps). The sensor data may bereceived in any suitable manner, such as wirelessly from a datacollection system coupled to an actor and/or an actor's equipment. Thetime interval when a maneuver or “trick” is performed can be determinedby identifying and measuring a jump by monitoring and analyzingcharacteristic signature of the gyro sensors using fuzzy logic asdescribed in U.S. patent application Ser. No. 13/612,470, the contentsof which are incorporated by reference herein. For example, FIG. 7compares a signal from accelerometers and gyro sensors recorded by adevice that was attached to a skateboard during maneuvers performed by askateboarder. To aid in separating the signals, the accelerometer normwas shifted up by 1000 mili-g. FIG. 7 shows that while accelerometersignal is very noisy due to the board vibration, the gyro signal is muchbetter correlated with the trick time period.

Embodiments of the present disclosure can be particularly effective inidentifying and characterizing athletic maneuvers for extreme sportsbased on objective data. Additionally, various embodiments may be usedin conjunction with various other sports and activities, such asbaseball, basketball, hockey, soccer, and football. For example,embodiments of the present disclosure may be configured to receive datafrom sensors coupled to a baseball player's bat, as well as from sensorsattached to the player's uniform and/or embedded in a baseball. In onesuch embodiment, information regarding a player hitting a baseball, suchas the angle of the player's swing, the velocity of the bat, and theforce at which the baseball is hit can be provided to various users,such as spectators of a baseball game or trainers seeking to optimizethe player's swing. As discussed in more detail below, such informationcan be provided in conjunction with video of the player hitting theball, either in near-real-time as the video is broadcast to spectators,as well as part of a replay of the hit. In this manner, embodiments ofthe present disclosure can provide information to enhance a spectator'sexperience (e.g., displaying the force applied to a baseball from a420-foot home run) as well as to help players, trainers, and coachesimprove an athlete's performance based on objective information.

Any number of different motion characteristics may be determined (110).The motion characteristics may include any desired information regardingthe motion of an actor or equipment used by an actor, such as position,velocity, acceleration, orientation, rotation, translation, deformation,and changes to and combinations thereof. Embodiments of the presentdisclosure can determine multiple motion characteristics during a periodof time that includes an athletic maneuver performed by an actor. Forexample, the orientation of a snowboarder executing a complex series offlips and rotations during jump can be monitored at various points ortimes (e.g., each millisecond) within a time period starting prior tothe jump and ending after the jump.

Motion characteristics may include any number of different values,descriptions, and other information characterizing the movement (or lackthereof) of an actor and/or the actor's equipment. For example, a motioncharacteristic associated with an athletic maneuver may include one ormore of: an orientation of the actor at a time within the time period(e.g., prior to, during, or after a maneuver), an angle of rotationaround a local axis of the actor, a direction of rotation of the actoraround a local axis of the actor, an angle of rotation around anabsolute axis perpendicular to a plane of motion of the actor, adirection of rotation round an absolute axis perpendicular to a plane ofmotion of the actor, and combinations thereof.

Motion characteristics may be determined in any suitable manner. Forexample, motion characteristics can be determined based on two differentframes of reference: an absolute frame of reference that is independentof the actor and independent of the actor's motion, and a local frame ofreference that is associated with (i.e., connected to, and moves with)the actor. Embodiments of the present disclosure can characterize andmeasure a variety of different athletic maneuvers based on analyzing acombination of motion characteristics measured relative to the absoluteand local frames of reference.

Embodiments of the present disclosure may also utilize informationregarding the placement or location of various sensors in determiningvarious motion characteristics. For example, determining rotation aboutan axis along the actor's body may be based on sensors (e.g.,accelerometers and gyroscopes) being positioned collinearly with eachother, such that sensors along one of the three-dimensional axes (x, y,and z) are the same. Embodiments of the present disclosure may alsoutilize calibration information from the sensors, such as calibration ofvarious sensors performed during manufacturing of the sensors orinstallation of the sensors in an actor's clothing, equipment, etc.Various embodiments of the present disclosure may also be configured tocommunicate with various sensors (or control systems coupled thereto) tocalibrate the sensors. Such calibration may be performed in any suitablemanner. In one embodiment, for example, calibration of one or moreinertial sensors attached to an actor and/or the actor's equipment canbe calibrated when the sensors indicate the actor and/or equipment isnot moving.

While multiple sensors may provide a large amount of information aboutan actor's motion, and the motion itself can be expressed by Eulerangles, pitch, roll, and yaw, or rotational matrix, this information isunderstood by the participants, judges, and spectators only if it isexpressed in the terms and sport-specific nomenclature that is commonlyaccepted in the sport performed by the actor. Embodiments of the presentdisclosure translate sensor observations to identify “tricks” using suchnomenclature. Embodiments of the present disclosure can identify keymotions for each trick, detect and measure all such motions, and thenidentify a trick and its quality or level of difficulty by comparing thedetected motions with the nominal motions required for each trick.

While not exhaustive, the most common characteristics that definedifferent tricks are: the orientation of the actor prior to the trick(forward facing, backward facing, left side facing, right side facing),the leading edge of the trick (e.g., starting from the front or end ofthe user's board), rotation around an absolute axis that is horizontaland perpendicular to the direction of motion during the trick (flipaxis), and rotation around an axis associated with the body of the actor(self rotation axis). In characterizing a trick, a rotation angle aroundany axis does not have to be a full rotation but could be a “back andforth” swing at some particular angle, (e.g., a “Shifty” trick).

In various embodiments, determining the orientation of an actor (or theactor's equipment) at various points during a time period includesdetermining an angle of self-rotation for the actor and determining anangle of flip for the actor. For example, an actor (such as askateboarder) performing a jump may be monitored using three gyroscopesand three accelerometers connected to the actor's equipment, body, orclothing. For this example, it is assumed that all the sensors arepositioned in a device such that their local axes are collinear asdescribed above. The orientation of the actor at time t with respect toa fixed reference frame is determined by a quaternion L(t). Thequaternion change satisfies the following kinematic equation:

L_dot=½ω° L,  (Equation 1)

In Equation 1, L_dot is a time derivative of L(t), ω is angular velocityof the body, measured by (for example) the gyroscopic sensors. As aninitial condition, L(0) (i.e., the orientation of the actor before thejump) can be determined. Alternatively, the orientation of the actorimmediately after the jump can be determined, namely L(t_max) wheret_max is a time after the actor lands. The orientation of the actor(including the actor's facing/orientation prior to, or after, amaneuver) can be determined in any desired manner, such as based on adirection of a velocity vector calculated from the sensor data (e.g.,from a GPS sensor) and the orientation of the actor calculated fromother sensor data (e.g., from a magnetometer).

In a practical system, determining L(t_max) may be preferable where alanding shock (i.e., a large acceleration after the jump) in theopposite directed with respect to gravity is measurable. Given theorientation of the actor after the jump, the equation thus becomes:

L(t_max)≈[cos φ/2; e sin φ/2];

e=(g×a_shock)/(|g×a_shock|); and

φ=a cos((g·a_shock)/|g∥a_shock|).

Here, “≈” means that there may be some error associated with the finalquaternion L(t_max), however this approximation may still be sufficientfrom practical point of view where the absolute orientation of thesportsman is not needed for calculation of turns during the jump.

Given the orientation at the end of the jump, L(t_max), the equationsmay be reformulated in classical Cauchy form (ODE with initialconditions), and using the new variable τ:

t=tmax−τ.

-   -   Substituting the given expression into Equation 1 obtains:

d/dt L=−d/dτL=½ω(tmax−τ)° L(tmax−τ).

-   -   Thus orientation of the sportsman can be determined solving the        following Cauchy problem:

$\left( {{{{d/d}\; \tau \; \overset{\sim}{L}\mspace{14mu} (\tau)} = {{{- 1}\text{/}2\; \overset{\sim}{\omega}\; (\tau)^{{^\circ}}\overset{\sim}{L}\; (\tau)\overset{\sim}{L}\; (0)} = {L\left( {t\; \max} \right)}}};{\tau \in \left\lbrack {0;{t\; \max}} \right\rbrack};{{\overset{\sim}{L}\; (\tau)}\overset{def}{=}{L\left( {{t\; \max} - \tau} \right)}};{{{and}{\omega (\tau)}}\overset{def}{=}{\overset{\sim}{\omega}\left( {{t\; \max} - \tau} \right)}}} \right)$

In this example, a local vertical axis may be determined to (forexample) calculate an angle of self-rotation of the actor during thejump. A local vertical axis may be determined in a variety of differentways, including based on an average of sensor data from one or moreaccelerometers prior to the athletic maneuver, an average of sensor datafrom one or more accelerometers after the athletic maneuver, sensor datafrom one or more accelerometers associated with a portion of theathletic maneuver (such as a landing performed after the maneuver),sensor data from one or more magnetometers (e.g., in conjunction withthe nominal orientation of a magnetic vector relative to the vertical atthe location of the event), and combinations thereof. FIG. 3 depicts anexemplary graph of sensor data measured from three accelerometers thatshows the shock of an impact from an actor landing after a jump. In thisgraph, the horizontal graph axis depicts time in milliseconds and thevertical axis depicts acceleration in m/ŝ2. The three accelerometerscorrespond to acceleration along the x, y, and z sensor axes.

The angle of self-rotation for the actor may be determined in anysuitable manner, including by calculating a path for each of a pluralityof unit vectors in a local frame of reference that is associated withthe actor, the plurality of unit vectors being orthogonal to a localvertical vector for the actor. The angle of self-rotation for the actormay then be selected as the largest rotation angle among such unitvectors.

Likewise, the angle of flip for the actor may be calculated in anydesired manner, including by determining the motion of a vertical vectorin a global frame of reference that is associated with the actor,identifying a plane of movement for the unit vertical vector,calculating a projection of the vertical vector on the plane, andselecting the angle of flip for the actor as the angle of the arctraveled by such projection on the plane.

FIG. 4 is an exemplary graph depicting self-rotation over time. In thisexample, sensor data from three gyroscopic sensors (corresponding to thex, y, and z planes as in FIG. 3) rotated around a nearly vertical axisin a nearly horizontal plane is plotted over time. In this graph, thevertical axis depicts rotation speed in rad/sec. Using the algorithmsdescribed above, the angle of self-rotation calculated for this data isabout 363 degrees, and the angle of flip is calculated at less than 1degree.

FIG. 5 is an exemplary graph depicting an angle of flip over time. Inthis example, sensor data from a gyroscopic sensor flipped (i.e.,rotated about a nearly horizontal axis) is plotted over time (inmilliseconds). FIG. 6A depicts the trajectory of the vector connectedwith the sensor that coincides with the vertical vector at the end ofthe rotation, while FIG. 6B depicts the projection of the trajectory onthe plane of rotation (nearly round in this example). The resultingangle of flip rotation is about 358 degrees and the angle ofself-rotation is about 38 degrees in this example.

Definitions for any desired athletic maneuvers can be received (115),associated with one or more motion characteristics (120), and stored ina database for future reference and retrieval (125). A definition for anathletic maneuver may apply to any movement or group of movements by anactor, the actor's equipment, or a combination thereof. For example, aback flip combined with a side flip performed by a snowboarder is oftenreferred to as a “wildcat.” A definition for a wildcat maneuver may thusinclude the name (or aliases) of the maneuver, a textual description ofthe maneuver, and the motion characteristic(s) associated with themaneuver. Continuing this example, the motion characteristics associatedwith the wildcat may include indicators of the different axes ofrotation by the actor's body and the rotation angles around these axes.Other information, such as a typical range of forces exerted on theactor's snowboard or parts of the actor's body and a range of time thesnowboarder is airborne may be associated with the definition to helpidentify future wildcat jumps by comparing measured motioncharacteristics to the wildcat jump definition in the database.

The definition for an athletic maneuver may include any number ofcomplex movements by an actor and/or the actor's equipment. For example,sensor data from sensors attached to the actor (such as a skateboarder)can be analyzed in conjunction with sensor data from the actor'sequipment (such as a skateboarder). In this manner, rotations, flips,and other movement by the actor can be analyzed together with rotationsand flips of the skateboard to identify all movements performed by theactor and provide a complete and accurate characterization of themaneuver performed. Embodiments of the present disclosure can thus beparticularly effective in characterizing and identifying maneuvers thatare complex and/or fast, therefore making it challenging for spectatorsand judges to identify all the movements involved.

A definition for an athletic maneuver may include, or be associatedwith, any other desired information. For example, statistics (includingmotion characteristics) for particular athletes who perform a maneuvermay be linked to the definition of the maneuver in a database, allowingusers of the systems and methods of the present disclosure to comparethe manner in which various athletes perform the maneuver. Otherinformation, such as video of the maneuver being performed, may likewisebe included in, or linked to, the definition.

One or more determined motion characteristics can be compared to themotion characteristics associated with a known athletic maneuvers in adatabase to identify the maneuver (130) associated with the determinedmotion characteristics. The motion characteristics determined for anunknown maneuver may be compared to motion characteristics for knownmaneuvers in any suitable manner. For example, characteristicsdescribing an actor's velocity, angle of self-rotation, angle of flip,and change in orientation during a time period can be compared to arelational database storing motion characteristics associated with theknown maneuvers. Known motion characteristics in the database may berepresented in nominal values and/or in ranges, reflecting thatdifferent actors may have different physical characteristics (e.g.,height, weight), may have different equipment, may perform the samemaneuver somewhat differently, and/or may perform a maneuver undervarious other conditions (e.g., with different types of ramps).

The database may also specify the quality of the maneuver that isassociated with different parameter values. For example, a full rotationof 360 degrees during a jump may be valued in 10 points, while a partialrotation of only 350 dg (from jump start to landing) may be valued onlyat 9 points. The quality of a maneuver may be determined according toany desired factors, such as the difficulty of the maneuver.

A level of similarity between a determined set of motion characteristicsand a known nominal set of motion characteristics may be determined(135). The level of similarity may be determined for each of a pluralityof motion characteristics. Alternatively (or in addition), an overalllevel of similarity may be determined for an entire maneuver. Thelevel(s) of similarity may be compared to various threshold values, andan alert generated if one or more similarity levels fail to meet athreshold value. In this manner, embodiments of the present disclosurecan identify new (i.e., undefined) maneuvers and help administrators andusers of the systems and methods described herein to identify errors inthe values or associations of stored motion characteristics and modifythem appropriately.

FIG. 1A depicts an exemplary method for populating a database withinformation regarding various athletic maneuvers. In this example,method 150 includes receiving sensor data (154) from a performed trick(152), and determining motion characteristics (156) and motion sequences(158) based on the received data. The motion characteristics and/ormotion sequences may be averaged over other nominal cases (160) of thesame trick, and a set of trick characteristics stored in the database(162).

Embodiments of the present disclosure may combine or overlay informationidentified and/or measured for an athletic maneuver (145) with anydesired form of media. For example, information regarding an athleticmaneuver can be combined or overlaid onto video taken of the athleticmaneuver, thus providing near-real-time information on a maneuver tospectators or judges. Such an overlay can be synchronized in any desiredmanner, including by using a time measured from a global positioningsystem, a common communication network, or other sensor or common clockoperating in conjunction with embodiments of the present disclosure.

Use of Gyro Sensors for Jump Detection

Jumps, and tricks performed during such jumps (e.g., while in the air),are often important aspects of many action sports. Accordingly, thedetection and measurement of such jumps is likewise an important part ofany system intended to quantify action sports. The typical approach formany conventional systems in detecting a jump or other athletic maneuveris to use the signal from an accelerometer. This approach assumes thatduring free fall the total nominal acceleration that can be measured byan acceleration sensor is zero. However, the practical application ofthis approach can be problematic.

For example, sensor errors, object (ski, snowboard, skateboard,motorcycle, etc.) vibration, and shocks mask the signal from anaccelerometer during a jump or other athletic maneuver. FIG. 8 shows agraph of a signal from an accelerometer recorded from a snowboarderjump. Graph 800 shows the norm of acceleration during a snowboarderjump. The circles on the graph 800 mark the start and end of the jump.Similarly, FIG. 9 shows a graph of the norm of acceleration during a“kickflip” skateboard maneuver, with the circles on graph 900 showingthe start and end of the kickflip.

In graph 800, the detection of the jump is somewhat straightforward,with the left-most circle (marking the start of the jump) and the rightmost having a much higher measured acceleration than the jumpacceleration. Graph 900 in FIG. 9, however, shows that it is often verydifficult to detect a an athletic maneuver based on acceleration whenthere is significant vibration. In particular, as shown in Graph 900,there is little difference between the acceleration measured at theleft-most circle (marking the start of the kickflip) and theacceleration measured at the right-most circle (marking the end of thekickflip).

In addition to vibration, there is another complication of using lowacceleration value as a jump indicator. During complicated athleticmaneuvers, such as a “double cork,” where a skateboarder or snowboarderperforms a double flip, sensors that are located away from the center ofinertia can record significant rotational acceleration. FIG. 10illustrates the norm of acceleration recorded during a double cork trickby an accelerometer installed on a snowboard. The plot shows that duringthe trick, while the athlete is still in the air and is nominally in“free fall,” acceleration can be as high as 4g, which is way above afree fall nominal zero acceleration.

Accordingly, these examples show that it can be very difficult to detectand measure an athletic trick using acceleration alone. The inventors ofthe present application have discovered that measurements from agyroscope (also referred to herein as a “gyro”) presents a number ofadvantages over the accelerometer signal. First, the measurements of agyro are much less sensitive to vibration. Second, a gyro signal doesnot have a strong external signal as compared to gravity for anaccelerometer. Third, in the absence of external forces and with noabrupt change in the object inertial characteristics, the gyro signal isrelatively constant. Finally, many the landings performed in manyathletic maneuvers is usually done on the front or back end of the sportequipment (snowboard, skateboard, motorcycle, etc) which leads to asharp “shock” response on the gyro sensors.

FIG. 11 shows a plot 1100 of signals from three gyroscopes coupled to askateboard during an “Ollie” maneuver, a maneuver where a skateboarderperforms a jump with his/her skateboard. The plot clearly shows atypical lift of the board (rotation around short board axis) at thebeginning of a jump and a typical landing “gyro shock.” FIG. 12 shows agraph 1200 of a derivative of a gyro signal during a snowboarding jumpwith a double cork. As can be seen in FIG. 12, the start of the doublecork (between 0.5 and 1 seconds) and the end of the double cork (between2.5 and 3 seconds) are better defined than based on an accelerometersignal alone as shown in FIG. 10.

The use of sensor data from one or more gyroscopes may be used inconjunction with method 100 depicted in FIG. 1 and described in moredetail above. For example, the receipt of sensor data related to themotion of an actor and/or the actor's equipment (105) may include sensordata from a gyroscope, and determining the plurality of motioncharacteristics (110) may be based on a rate of change in the data fromthe gyroscope. The gyroscope sensor data can be used to help identify avariety of different motion characteristics and athletic maneuvers, suchas the start of a jump and/or a landing. Data from gyro sensors may beused identify athletic maneuvers (130) alone or in conjunction with datafrom other types of sensors, such as an accelerometer.

In embodiments where data from both a gyroscope and an accelerometer areused together in determining motion characteristics, a fuzzy logicanalysis may be performed on the data from the gyroscope and the datafrom the accelerometer.

After a jump is detected, tricks could be identified and measured byusing object motion recreation via gyro integration. A common way torestore 3D motion is to integrate gyro using quaternions according tothe following equation, where L is a quaternion associated with thebody, L_dot is its time derivative, and Ω is a vector of angularvelocity measured by gyro sensors:

L_dot=−½*ω*L

The initial conditions for the integration of this equation can bedetermined by averaging acceleration and magnetic vectors before orafter the jump during some time period when gyro signal is small.Additionally, the orientation of an actor and/or the actor's equipmentduring the jump may be calculated to help can be used to filter outfalse alarm (false positive) for jump detection. In some embodiments,for example, the orientation of an actor and/or the actor's equipmentmay be determined based at least partially on a direction of a magneticvector calculated using data from a magnetometer.

Embodiments of the disclosure may also be configured to automaticallygenerate and transmit reports, statistics, and/or analyses based oninformation related to various athletic maneuvers. These may be providedin real-time or near-real-time to judges, spectators, social mediaoutlets, broadcasting entities, websites, and other systems andentities. The computed jump and trick parameters and characteristics canbe superimposed on a time-synchronized video to enhance the viewingexperience and to provide more detailed information to spectators,coaches, and judges.

FIG. 2 is a block diagram of system which may be used in conjunctionwith various embodiments. While FIG. 2 illustrates various components ofa computer system, it is not intended to represent any particulararchitecture or manner of interconnecting the components. Other systemsthat have fewer or more components may also be used.

In FIG. 2, the system 200 includes a computer system 210 comprising aprocessor 212, memory 214, and user interface 216. Computer system 210may include any number of different processors, memory components, anduser interface components, and may interact with any other desiredsystems and devices in conjunction with embodiments of the presentdisclosure. For example, the system 200 may include (or interact with)one or more databases (not shown) to allow the storage and retrieval ofinformation such as the results of a jump/trick analysis, data fromsensors attached to an actor or his/her equipment, trick definitions,and other data.

The functionality of the computer system 210, including the methoddepicted in FIG. 1, (in whole or in part), may be implemented throughthe processor 212 executing computer-readable instructions stored in thememory 214 of the system 210. The memory 214 may store anycomputer-readable instructions and data, including softwareapplications, applets, and embedded operating code.

The functionality of the system 210 or other system and devicesoperating in conjunction with embodiments of the present disclosure mayalso be implemented through various hardware components storingmachine-readable instructions, such as application-specific integratedcircuits (ASICs), field-programmable gate arrays (FPGAs) and/or complexprogrammable logic devices (CPLDs). Systems according to aspects ofcertain embodiments may operate in conjunction with any desiredcombination of software and/or hardware components. The processor 212retrieves and executes instructions stored in the memory 214 to controlthe operation of the system 210. Any type of processor, such as anintegrated circuit microprocessor, microcontroller, and/or digitalsignal processor (DSP), can be used in conjunction with embodiments ofthe present disclosure. A memory 214 operating in conjunction withembodiments of the disclosure may include any combination of differentmemory storage devices, such as hard drives, random access memory (RAM),read only memory (ROM), FLASH memory, or any other type of volatileand/or nonvolatile memory. Data (such as athletic maneuver definitionsand associated motion characteristics) can be stored in the memory 214in any desired manner, such as in a relational database.

The system 210 includes a user interface 216 may include any number ofinput devices (not shown) to receive commands, data, and other suitableinput from a user such as input regarding the definitions of athleticmaneuvers. The user interface 216 may also include any number of outputdevices (not shown) to provides the user with data, notifications, andother information. Typical I/O devices may include mice, keyboards,modems, network interfaces, printers, scanners, video cameras and otherdevices.

The system 210 may communicate with one or more sensor devices 220, aswell as other systems and devices in any desired manner, including vianetwork 230. The sensor devices 220 may include, or be coupled to, oneor more control systems (not shown) through which the system 210communicates with, or the system 210 may communicate directly with thesensors 220.

The system 210 may be, include, or operate in conjunction with, aserver, a laptop computer, a desktop computer, a mobile subscribercommunication device, a mobile phone, a personal digital assistant(PDA), a tablet computer, an electronic book or book reader, a digitalcamera, a video camera, a video game console, and/or any other suitablecomputing device.

The network 230 may include any electronic communications system ormethod. Communication among components operating in conjunction withembodiments of the present disclosure may be performed using anysuitable communication method, such as, for example, a telephonenetwork, an extranet, an intranet, the Internet, point of interactiondevice (point of sale device, personal digital assistant (e.g., iPhone®,Palm Pilot®, Blackberry®), cellular phone, kiosk, etc.), onlinecommunications, satellite communications, off-line communications,wireless communications, transponder communications, local area network(LAN), wide area network (WAN), virtual private network (VPN), networkedor linked devices, keyboard, mouse and/or any suitable communication ordata input modality. Systems and devices of the present disclosure mayutilize TCP/IP communications protocols as well as IPX, Appletalk, IP-6,NetBIOS, OSI, any tunneling protocol (e.g. IPsec, SSH), or any number ofexisting or future protocols.

While some embodiments can be implemented in fully functioning computersand computer systems, various embodiments are capable of beingdistributed as a computing product in a variety of forms and are capableof being applied regardless of the particular type of machine orcomputer-readable media used to actually effect the distribution.

A machine readable medium can be used to store software and data whichwhen executed by a data processing system causes the system to performvarious methods. The executable software and data may be stored invarious places including for example ROM, volatile RAM, non-volatilememory and/or cache. Portions of this software and/or data may be storedin any one of these storage devices. Further, the data and instructionscan be obtained from centralized servers or peer to peer networks.Different portions of the data and instructions can be obtained fromdifferent centralized servers and/or peer to peer networks at differenttimes and in different communication sessions or in a same communicationsession. The data and instructions can be obtained in entirety prior tothe execution of the applications. Alternatively, portions of the dataand instructions can be obtained dynamically, just in time, when neededfor execution. Thus, it is not required that the data and instructionsbe on a machine readable medium in entirety at a particular instance oftime.

Examples of computer-readable media include but are not limited torecordable and non-recordable type media such as volatile andnon-volatile memory devices, read only memory (ROM), random accessmemory (RAM), flash memory devices, floppy and other removable disks,magnetic disk storage media, optical storage media (e.g., Compact DiskRead-Only Memory (CD ROMS), Digital Versatile Disks (DVDs), etc.), amongothers. The computer-readable media may store the instructions.

In various embodiments, hardwired circuitry may be used in combinationwith software instructions to implement the techniques. Thus, thetechniques are neither limited to any specific combination of hardwarecircuitry and software nor to any particular source for the instructionsexecuted by the data processing system.

Although some of the drawings illustrate a number of operations in aparticular order, operations which are not order dependent may bereordered and other operations may be combined or broken out. While somereordering or other groupings are specifically mentioned, others will beapparent to those of ordinary skill in the art and so do not present anexhaustive list of alternatives. Moreover, it should be recognized thatthe stages could be implemented in hardware, firmware, software or anycombination thereof.

For the sake of brevity, conventional data networking, applicationdevelopment and other functional aspects of the systems (and componentsof the individual operating components of the systems) may not bedescribed in detail herein. Furthermore, the connecting lines shown inthe various figures contained herein are intended to represent exemplaryfunctional relationships and/or physical couplings between the variouselements. It should be noted that many alternative or additionalfunctional relationships or physical connections may be present in apractical system.

The various system components discussed herein may include one or moreof the following: a host server or other computing systems including aprocessor for processing digital data; a memory coupled to the processorfor storing digital data; an input digitizer coupled to the processorfor inputting digital data; an application program stored in the memoryand accessible by the processor for directing processing of digital databy the processor; a display device coupled to the processor and memoryfor displaying information derived from digital data processed by theprocessor; and a plurality of databases. Various databases used hereinmay include: shipping data, package data, and/or any data useful in theoperation of the system.

Various functionality may be performed via a web browser and/orapplication interfacing utilizing a web browser. Such browserapplications may comprise Internet browsing software installed within acomputing unit or a system to perform various functions. These computingunits or systems may take the form of a computer or set of computers,and any type of computing device or systems may be used, includinglaptops, notebooks, tablets, hand held computers, personal digitalassistants, set-top boxes, workstations, computer-servers, main framecomputers, mini-computers, PC servers, network sets of computers,personal computers and tablet computers, such as iPads, iMACs, andMacBooks, kiosks, terminals, point of sale (POS) devices and/orterminals, televisions, or any other device capable of receiving dataover a network. Various embodiments may utilize Microsoft InternetExplorer, Mozilla Firefox, Google Chrome, Apple Safari, Opera, or anyother of the myriad software packages available for browsing theinternet.

Various embodiments may operate in conjunction with any suitableoperating system (e.g., Windows NT, 95/98/2000/CE/Mobile/, Windows 7/8,OS2, UNIX, Linux, Solaris, MacOS, PalmOS, etc.) as well as variousconventional support software and drivers typically associated withcomputers. Various embodiments may include any suitable personalcomputer, network computer, workstation, personal digital assistant,cellular phone, smart phone, minicomputer, mainframe or the like.Embodiments may implement security protocols, such as Secure SocketsLayer (SSL), Transport Layer Security (TLS), and Secure Shell (SSH).Embodiments may implement any desired application layer protocol,including http, https, ftp, and sftp.

The various system components may be independently, separately orcollectively suitably coupled to a network via data links whichincludes, for example, a connection to an Internet Service Provider(ISP) over the local loop as is typically used in connection withstandard modem communication, cable modem, satellite networks, ISDN,Digital Subscriber Line (DSL), or various wireless communicationmethods. It is noted that embodiments of the present disclosure mayoperate in conjunction with any suitable type of network, such as aninteractive television (ITV) network.

The system may be partially or fully implemented using cloud computing.“Cloud” or “Cloud computing” includes a model for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, servers, storage, applications, and services)that can be rapidly provisioned and released with minimal managementeffort or service provider interaction. Cloud computing may includelocation-independent computing, whereby shared servers provideresources, software, and data to computers and other devices on demand.

Various embodiments may be used in conjunction with web services,utility computing, pervasive and individualized computing, security andidentity solutions, autonomic computing, cloud computing, commoditycomputing, mobility and wireless solutions, open source, biometrics,grid computing and/or mesh computing.

Any databases discussed herein may include relational, hierarchical,graphical, or object-oriented structure and/or any other databaseconfigurations. Moreover, the databases may be organized in any suitablemanner, for example, as data tables or lookup tables. Each record may bea single file, a series of files, a linked series of data fields or anyother data structure. Association of certain data may be accomplishedthrough any desired data association technique such as those known orpracticed in the art. For example, the association may be accomplishedeither manually or automatically.

Any databases, systems, devices, servers or other components of thesystem may be located at a single location or at multiple locations,wherein each database or system includes any of various suitablesecurity features, such as firewalls, access codes, encryption,decryption, compression, decompression, and/or the like.

Encryption may be performed by way of any of the techniques nowavailable in the art or which may become available—e.g., Twofish,Blowfish, RSA, El Gamal, Schorr signature, DSA, PGP, PKI, and symmetricand asymmetric cryptosystems.

Embodiments may connect to the Internet or an intranet using standarddial-up, cable, DSL or any other Internet protocol known in the art.Transactions may pass through a firewall in order to preventunauthorized access from users of other networks.

The computers discussed herein may provide a suitable website or otherInternet-based graphical user interface which is accessible by users.For example, the Microsoft Internet Information Server (IIS), MicrosoftTransaction Server (MTS), and Microsoft SQL Server, may be used inconjunction with the Microsoft operating system, Microsoft NT web serversoftware, a Microsoft SQL Server database system, and a MicrosoftCommerce Server. Additionally, components such as Access or MicrosoftSQL Server, Oracle, Sybase, Informix MySQL, Interbase, etc., may be usedto provide an Active Data Object (ADO) compliant database managementsystem. In another example, an Apache web server can be used inconjunction with a Linux operating system, a MySQL database, and thePerl, PHP, and/or Python programming languages.

Any of the communications, inputs, storage, databases or displaysdiscussed herein may be facilitated through a website having web pages.The term “web page” as it is used herein is not meant to limit the typeof documents and applications that might be used to interact with theuser. For example, a typical website might include, in addition tostandard HTML documents, various forms, Java applets, JavaScript, activeserver pages (ASP), common gateway interface scripts (CGI), extensiblemarkup language (XML), dynamic HTML, cascading style sheets (CSS), AJAX(Asynchronous Javascript And XML), helper applications, plug-ins, andthe like. A server may include a web service that receives a requestfrom a web server, the request including a URL and an IP address. Theweb server retrieves the appropriate web pages and sends the data orapplications for the web pages to the IP address. Web services areapplications that are capable of interacting with other applicationsover a communications means, such as the Internet.

Various embodiments may employ any desired number of methods fordisplaying data within a browser-based document. For example, data maybe represented as standard text or within a fixed list, scrollable list,drop-down list, editable text field, fixed text field, pop-up window,and the like. Likewise, embodiments may utilize any desired number ofmethods for modifying data in a web page such as, for example, free textentry using a keyboard, selection of menu items, check boxes, optionboxes, and the like.

The exemplary systems and methods illustrated herein may be described interms of functional block components, screen shots, optional selectionsand various processing steps. It should be appreciated that suchfunctional blocks may be realized by any number of hardware and/orsoftware components configured to perform the specified functions. Forexample, the system may employ various integrated circuit components,e.g., memory elements, processing elements, logic elements, look-uptables, and the like, which may carry out a variety of functions underthe control of one or more microprocessors or other control devices.Similarly, the software elements of the system may be implemented withany programming or scripting language such as C, C++, C#, Java,JavaScript, VBScript, Macromedia Cold Fusion, COBOL, Microsoft ActiveServer Pages, assembly, PERL, PHP, AWK, Python, Visual Basic, SQL StoredProcedures, PL/SQL, any UNIX shell script, and extensible markuplanguage (XML) with the various algorithms being implemented with anycombination of data structures, objects, processes, routines or otherprogramming elements. Further, it should be noted that the system mayemploy any number of conventional techniques for data transmission,signaling, data processing, network control, and the like. Stillfurther, the system could be used to detect or prevent security issueswith a client-side scripting language, such as JavaScript, VBScript orthe like.

The systems and methods of the present disclosure may be embodied as acustomization of an existing system, an add-on product, a processingapparatus executing upgraded software, a stand alone system, adistributed system, a method, a data processing system, a device fordata processing, and/or a computer program product. Accordingly, anyportion of the system or a module may take the form of a processingapparatus executing code, an internet based embodiment, an entirelyhardware embodiment, or an embodiment combining aspects of the internet,software and hardware. Furthermore, the system may take the form of acomputer program product on a computer-readable storage medium havingcomputer-readable program code means embodied in the storage medium. Anysuitable computer-readable storage medium may be utilized, includinghard disks, CD-ROM, optical storage devices, magnetic storage devices,and/or the like.

The system and method is described herein with reference to screenshots, block diagrams and flowchart illustrations of methods, apparatus(e.g., systems), and computer program products according to variousembodiments. It will be understood that each functional block of theblock diagrams and the flowchart illustrations, and combinations offunctional blocks in the block diagrams and flowchart illustrations,respectively, can be implemented by computer program instructions.

These computer program instructions may be loaded onto a general purposecomputer, special purpose computer, or other programmable dataprocessing apparatus to produce a machine, such that the instructionsthat execute on the computer or other programmable data processingapparatus create means for implementing the functions specified in theflowchart block or blocks. These computer program instructions may alsobe stored in a computer-readable memory that can direct a computer orother programmable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablememory produce an article of manufacture including instruction meanswhich implement the function specified in the flowchart block or blocks.The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions specified in theflowchart block or blocks.

Accordingly, functional blocks of the block diagrams and flowchartillustrations support combinations of means for performing the specifiedfunctions, combinations of steps for performing the specified functions,and program instruction means for performing the specified functions. Itwill also be understood that each functional block of the block diagramsand flowchart illustrations, and combinations of functional blocks inthe block diagrams and flowchart illustrations, can be implemented byeither special purpose hardware-based computer systems which perform thespecified functions or steps, or suitable combinations of specialpurpose hardware and computer instructions. Further, illustrations ofthe process flows and the descriptions thereof may make reference touser windows, webpages, websites, web forms, prompts, etc. Practitionerswill appreciate that the illustrated steps described herein may comprisein any number of configurations including the use of windows, webpages,web forms, popup windows, prompts and the like. It should be furtherappreciated that the multiple steps as illustrated and described may becombined into single webpages and/or windows but have been expanded forthe sake of simplicity. In other cases, steps illustrated and describedas single process steps may be separated into multiple webpages and/orwindows but have been combined for simplicity.

The term “non-transitory” is to be understood to remove only propagatingtransitory signals per se from the claim scope and does not relinquishrights to all standard computer-readable media that are not onlypropagating transitory signals per se. Stated another way, the meaningof the term “non-transitory computer-readable medium” should beconstrued to exclude only those types of transitory computer-readablemedia which were found in In Re Nuijten to fall outside the scope ofpatentable subject matter under 35 U.S.C. §101.

Benefits, other advantages, and solutions to problems have beendescribed herein with regard to specific embodiments. However, thebenefits, advantages, solutions to problems, and any elements that maycause any benefit, advantage, or solution to occur or become morepronounced are not to be construed as critical, required, or essentialfeatures or elements of the disclosure.

Although the disclosure includes a method, it is contemplated that itmay be embodied as computer program instructions on a tangiblecomputer-readable carrier, such as a magnetic or optical memory or amagnetic or optical disk. All structural, chemical, and functionalequivalents to the elements of the above-described exemplary embodimentsthat are known to those of ordinary skill in the art are expresslyincorporated herein by reference and are intended to be encompassed bythe present claims. Moreover, it is not necessary for a device or methodto address each and every problem sought to be solved by the presentdisclosure, for it to be encompassed by the present claims. Furthermore,no element, component, or method step in the present disclosure isintended to be dedicated to the public regardless of whether theelement, component, or method step is explicitly recited in the claims.No claim element herein is to be construed under the provisions of 35U.S.C. 112, sixth paragraph, unless the element is expressly recitedusing the phrase “means for.” As used herein, the terms “comprises”,“comprising”, or any other variation thereof, are intended to cover anon-exclusive inclusion, such that a process, method, article, orapparatus that comprises a list of elements does not include only thoseelements but may include other elements not expressly listed or inherentto such process, method, article, or apparatus.

Where a phrase similar to “at least one of A, B, or C,” “at least one ofA, B, and C,” “one or more A, B, or C,” or “one or more of A, B, and C”is used, it is intended that the phrase be interpreted to mean that Aalone may be present in an embodiment, B alone may be present in anembodiment, C alone may be present in an embodiment, or that anycombination of the elements A, B and C may be present in a singleembodiment; for example, A and B, A and C, B and C, or A and B and C.

Changes and modifications may be made to the disclosed embodimentswithout departing from the scope of the present invention. These andother changes or modifications are intended to be included within thescope of the present disclosure, as expressed in the following claims.

What is claimed is:
 1. A computer-implemented method comprising:receiving, by a computer system, sensor data related to motion over atime period by one or more of an actor and the actor's equipment,wherein the sensor data includes data from a gyroscope; determining, bythe computer system and based on the sensor data, a plurality of motioncharacteristics; and identifying, based on the plurality of motioncharacteristics, an athletic maneuver associated with the motion duringthe time period.
 2. The method of claim 1, wherein determining theplurality of motion characteristics is based on a rate of change in thedata from the gyroscope.
 3. The method of claim 1, wherein determiningthe plurality of motion characteristics includes detecting a landing bythe actor.
 4. The method of claim 1, wherein determining the pluralityof motion characteristics includes detecting a start of a jump by theactor.
 5. The method of claim 1, wherein the sensor data furtherincludes data from an accelerometer.
 6. The method of claim 5, whereindetermining the plurality of motion characteristics includes performinga fuzzy logic analysis of the data from the gyroscope and the data fromthe accelerometer.
 7. The method of claim 1, wherein the sensor dataincludes data from a magnetometer, and wherein determining the pluralityof motion characteristics includes determining an orientation for theactor based at least partially on a direction of a magnetic vectorcalculated using the data from the magnetometer.
 8. The method of claim1, wherein the plurality of motion characteristics are selected from thegroup consisting of: position; velocity; acceleration; orientation;rotation; translation; deformation; and combinations thereof.
 9. Themethod of claim 1, wherein the sensor data further includes data from asensor selected from the group consisting of: a magnetometer; a Halleffect sensor; a global positioning system; an ultrasonic sensor; anoptical sensor; a barometric sensor; and combinations thereof.
 10. Themethod of claim 1, wherein identifying the athletic maneuver includescomparing the plurality of determined motion characteristics to one ormore motion characteristics associated with a known athletic maneuver.11. The method of claim 10, further comprising determining a level ofsimilarity between the plurality of determined motion characteristicsand the motion characteristics associated with the known athleticmaneuver.
 12. The method of claim 11, further comprising generating analert in response to the level of similarity being beneath apredetermined threshold.
 13. The method of claim 10, wherein the one ormore motion characteristics associated with the known athletic maneuverincludes one or more of: an orientation of the actor at a start of thetime period; an angle of rotation around a local axis of the actor; adirection of rotation of the actor around a local axis of the actor; anangle of rotation around an absolute axis perpendicular to a plane ofmotion of the actor; a direction of rotation round an absolute axisperpendicular to a plane of motion of the actor; and a leading edge of apiece of sports equipment at a start of the time period.
 14. The methodof claim 10, wherein the known athletic maneuver is stored in a databasewith one or more associated motion characteristics.
 15. The method ofclaim 1, further comprising: receiving, via a user interface incommunication with the computer system, input related to an athleticmaneuver definition; in response to the input, associating the athleticmaneuver definition with one or more of the plurality of motioncharacteristics; and storing, in a database in communication with thecomputer system, the athletic maneuver definition and the one or moreassociated motion characteristics.
 16. The method of claim 1, furthercomprising: overlaying information related to the athletic maneuver onvideo of the actor performing the athletic maneuver, wherein theinformation related to the athletic maneuver is based on the pluralityof motion characteristics.
 17. The method of claim 16, whereinoverlaying the information related to the athletic maneuver includessynchronizing the overlaid information and the video based on a timemeasured from a common time reference.
 18. The method of claim 17,wherein the common time reference is from one or more of a globalpositioning system and a network.
 19. The method of claim 1, furthercomprising determining the time period of the motion by selecting thetime period based on a signal from a gyroscope.
 20. A non-transitory,computer-readable medium storing instructions that, when executed, causea computing device to: receive sensor data related to motion over a timeperiod by one or more of an actor and the actor's equipment, wherein thesensor data includes data from a gyroscope; determine, based on thesensor data, a plurality of motion characteristics; and identify, basedon the plurality of motion characteristics, an athletic maneuverassociated with the motion during the time period.
 21. A systemcomprising: at least one processor; and memory in communication with theat least one processor and storing instructions that, when executed bythe processor, cause the system to: receive sensor data related tomotion over a time period by one or more of an actor and the actor'sequipment, wherein the sensor data includes data from a gyroscope;determine, based on the sensor data, a plurality of motioncharacteristics; and identify, based on the plurality of motioncharacteristics, an athletic maneuver associated with the motion duringthe time period.